Apparatus and Methods for Maximum Likelihood Symbol Detection in Communications Systems

ABSTRACT

This invention discloses apparatus and methods for detecting transmit symbols from the receiving waveform samples at the receiver side for communications systems. The receiving waveform samples are corrupted by channel and noise effects and the detection is carried out with a maximum likelihood optimality criterion. This invention utilizes a successive linear constraint exchange scheme that formulates a sequence of linearly constrained minimization subproblems to allow the solutions to these subproblems, combined with certain quantization and mapping operations, to converge to the optimal maximum likelihood estimate. This invention is applicable to any digitally modulated communications systems, including but not limited to Multiple Input Multiple Output (MIMO) communications systems.

This application claims the benefit of U.S. Provisional Application No.62/175,451, filed on Jun. 15, 2015.

FIELD OF THE INVENTION

The present invention relates to apparatus and methods for detectingtransmit symbols at the receiver side in a communications system. Thisinvention detects the symbols optimally with a maximum likelihoodcriterion and is applicable to any digitally modulated communicationssystems, including but not limited to Multiple Input Multiple Output(MIMO) communications systems.

BACKGROUND OF THE INVENTION

For a digital modulation communications system, the transmitter encodesinformation bits into transmit symbols, usually with forward errorcorrection coding, and further modulates the transmit symbols intowaveform to travel through the physical media (or channel) of thecommunication link to arrive at the receiver side. The receiver samplesthe incoming waveform and employs various digital receiver schemes torecover the information bits from the receiving waveform under channeland noise effects.

One of the challenging tasks for implementing a robust receiver lies inthe design of a symbol detector to optimally detect the transmit symbolswith a maximum likelihood criterion. The design of a maximum likelihoodsymbol detector is particularly challenging for a MIMO communicationssystem since it involves multi-dimensional search with an exponentialgrowth complexity when the number of input and/or output increases. Thisinvention discloses apparatus and methods to perform optimal maximumlikelihood symbol detector that is applicable to any digitally modulatedcommunications systems, including but not limited to MIMO communicationssystems.

SUMMARY OF THE INVENTION

This invention presents apparatus and methods to compute for thetransmit symbols from the observed receiving digital samples corruptedby channel and noise effects. In particular, the N receiving samples{y₁, y₂, . . . , y_(N)} and the M transmit symbols {x₁, x₂, . . . ,x_(M)} at one symbol period are related in the following vector form:

y=Hx+n

where the N×1 vector

$y = \begin{bmatrix}y_{1} \\y_{2} \\\vdots \\y_{N}\end{bmatrix}$

denotes the N receiving samples, the M×1 vector

$x = \begin{bmatrix}x_{1} \\x_{2} \\\vdots \\x_{M}\end{bmatrix}$

denotes the M transmit symbols, the N×M matrix

$H = \begin{bmatrix}h_{11} & \cdots & h_{1M} \\\vdots & \ddots & \vdots \\h_{N1} & \cdots & h_{NM}\end{bmatrix}$

denotes the channel state information and the N×1 vector

$n = \begin{bmatrix}n_{1} \\n_{2} \\\vdots \\n_{N}\end{bmatrix}$

denotes the receiver additive noise. For generality, all these vectorsand matrices are assumed complex-valued.

In a typical communications system, each transmit symbol is selectedfrom a pre-designated set of complex-valued, discrete points, termed thesymbol constellation. For example, the Quadrature and AmplitudeModulation (QAM) defines transmit symbols from a rectangular grid whereQAM-16 modulation contains 16 constellation points, QAM-64 contains 64constellation points, so on and so forth. This invention uses thenotation, Ω, to denote the set of the constellation points in anunderlining communications system.

Given the receiving sample vector y and a proper estimation of thechannel state information matrix H through training sequences, themaximum likelihood symbol detector is designed to search for thetransmit symbol vector x over all possible constellation points, and thecorresponding optimization problem is defined as:

$\min\limits_{\{{{x_{m} \in \Omega},{m = 1},2,\cdots \mspace{11mu},M}\}}{{y - {Hx}}}_{2}^{2}$

where ∥·∥₂ denotes the 2-norm of the enclosed operand. As each elementof the symbol vector x is constrained to be selected from discretepoints on the symbol constellation map, the solution to this maximumlikelihood detector is non-trivial, especially when M is large.

The respective least-squares problem can be defined by removing therequirement for the elements of x to be discrete points on the symbolconstellation map:

${\min\limits_{\{{x_{m},{m = 1},2,\cdots \mspace{11mu},M}\}}{{y - {Hx}}}_{2}^{2}}\mspace{31mu}$

For this least-squares problem, the optimal solution is well-known andhas a closed-form expression as:

x _(ls)=(H ^(†) H)⁻¹ H ^(†) y

where H^(†) denotes the Hermitian transpose of H. Without loss ofgenerality, the matrix H^(†)H is assumed invertible and well-conditionedin this invention as the use of “diagonal loading” technique by adding asmall positive number to the diagonal elements of H^(†)H can bepractically applied to precondition the H^(†)H matrix to avoidill-conditioned issue.

The simplest approximation to the maximum likelihood solution is to“quantize” each element of x_(ls) to the nearest (measured by Euclideandistance) discrete points on the symbol constellation map:

{circumflex over (x)}_(ls)=Q[x_(ls)]

where Q[·] denotes the element-wise quantization of the enclosed vectorto the nearest constellation point. When M>1, the “quantized”least-squares solution, {circumflex over (x)}_(ls), rarely provides asatisfactory solution compared to the true maximum likelihood optimalsolution for detecting the transmit symbols from the receiving samplescorrupted by the channel and noise effect. Hence, there is a practicalneed to design a true maximum likelihood optimized symbol detector in acommunications system, and this task is non-trivial, especially for aMIMO communications system.

This invention reformulates the maximum likelihood problem by includingthe unquantized least-squares solution x_(ls) to the minimizationobjective function as:

$\min\limits_{\{{{x_{m} \in \Omega},{m = 1},2,\cdots \mspace{11mu},M}\}}\left\{ {{{y - {Hx}_{ls}}}_{2}^{2} + \left. {H\left( {x - x_{ls}} \right.}_{2}^{2} \right\}} \right.$

which can be derived by use of the following property for theleast-squares solution:

H ^(†)(y−Hx _(ls))=0

Note that the first term in the above reformulated maximum likelihoodproblem is a constant with respect to the symbol vector x and can beremoved from the minimization objective function. Hence, the maximumlikelihood problem can be further reformulated as:

$\min\limits_{\{{{x_{m} \in \Omega},{m = 1},2,\cdots \mspace{11mu},M}\}}{{H\left( {x - x_{ls}} \right.}_{2}^{2}}$

Let C be an arbitrary M×M unitary matrix, the maximum likelihood problemcan now be readily transformed into a linearly constrained minimizationproblem:

$\min\limits_{w}{{Aw}}_{2}^{2}$

subject to M linear constraints given by:

C^(†)w=f

where

A=HC^(†)

f=x−x _(ls)

and the M elements of the symbol vector x belong to the discreteconstellation points:

{x_(m) ε Ω, m=1,2, . . . , M}

Note that the transmit symbol vector x and the least-squares solutionx_(ls) now appears in the form of the constraint values f in the linearconstraint specification for this reformulated maximum likelihoodproblem. In this invention, the choice of the constraint matrix C is notunique and is only required to be unitary, i.e., C^(†)=C⁻¹. Somepractically useful choices of the constraint matrix C can be as simpleas the identify matrix, I, or an unitary matrix derived from theSingular Value Decomposition (SVD) of H or the QR decomposition ofH^(†):

$A = \left\{ \begin{matrix}{H,} & {{C = I},} & {H = {HI}} \\{S,} & {{C = V^{\dagger}},} & {{H = {USV}^{\dagger}},} \\{R^{\dagger},} & {{C = Q^{\dagger}},} & {H^{\dagger} = {QR}}\end{matrix} \right.$

The above linear constraint formulation defines a full set of M linearconstraints over the M-dimensional space with the correspondingconstraint values specified by the differences of the transmit symbolvector x and the least-squares solution x_(ls), denoted by the vector f.Under this linear constraint minimization framework, this inventionutilizes a successive linear constraint exchange scheme that formulatesa sequence of linearly constrained minimization subproblems by selectinga reduced set of linear constraints from the full set of M constraintsand by assigning proper constraint values to these selected constraintsto allow the solutions to these subproblems, combined with certainquantization and mapping operations, to converge to the optimal maximumlikelihood estimate of the transmit symbol vector x at the receiverside. Specifically, the core computational unit for this inventionincludes closed-form computation of solutions to linearly-constrainedminimization subproblems, quantization of these subproblem solutions tothe nearest constellation points and mapping of the quantized subproblemsolutions to their respective neighboring symbol vectors confined to thepivoting property delineated in this invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the maximum likelihood symbol detector in a MIMOcommunications system;

FIG. 2 illustrates the quantization of an M-dimensional complex-valuedvector u to an M-dimensional symbol vector x having elements specifiedby a symbol constellation map;

FIG. 3 illustrates the augmentation process (augmentizer) for mapping ani-dimensional seed symbol vector x_(I) _(i) into an M-dimensionalaugmented symbol vector x, and the deaugmentation process(deaugmentizer) for mapping the M-dimensional augmented symbol vector xback to the i-dimensional seed symbol vector x_(I) _(i) and the(M-i)-dimensional seed complementary symbol vector x_(I) _(m−i) .

FIG. 4 illustrates the mapping of a symbol vector x to its neighboringsymbol vector x confined to the pivoting property;

FIG. 5 illustrates the basic Augmentizer-Pivotizer Unit (APU);

FIG. 6 illustrates an embodiment of the maximum likelihood symboldetector that has M branches with each branch consisting of a maximumlikelihood estimation fired up by 1-dimensional seed symbol block;

FIG. 7 illustrates an embodiment of the maximum likelihood estimationfired up by 1-dimensional seed symbol block for the m-th branch of themaximum likelihood symbol detector;

FIG. 8 illustrates the APU with feedback;

FIG. 9 illustrates the APU with seed duality.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

A shown in FIG. 1, the receiver of a MIMO wireless communications system1 with N antennas consists of a Radio Frequency (RF) to Analog BasebandDown Conversion block 10 to convert the N antenna output from RF to Nanalog baseband signals; N Analog-to-Digital Converters 11 to sample theN baseband analog signals into N streams of digital samples; a DigitalFront-End Processing block 12 to perform digital baseband signalfront-end processing such as automatic gain control, carrier and timingsynchronization, etc.; and a Maximum Likelihood Symbol Detector 13 toestimate the M transmit symbols {x₁, x₂, . . . , x_(m)} from the Ndigital samples {y₁, y₂, . . . , y_(N)} at every symbol period of thecommunications system. This invention discloses apparatus and methods toimplement the maximum likelihood symbol detector 13 that is applicablebut not limited to the MIMO communications system 1.

This invention partitions the M-dimensional symbol vector x into twodistinct i-dimensional symbol vector, x_(I) _(i) , and (M−i)-dimensionalsymbol vector, x_(I) _(M−i) , specified by the selection of two sets ofmutually exclusive indices, I_(i) and I_(M−i):

x _(I) _(i) =x(I _(i)), x _(I) _(M−i) =x(I _(M−i))

I _(i) ∪ I _(M−i)={1,2, . . . , M}

I _(i) ∩ I_(M−i)=Ø

where I_(i) contains i indices and I_(M−i) contains (M−i) indices with iselected as an integer between I and M. The order of the indices inthese two index sets has no significance in deriving the maximumlikelihood detector and can be assumed in ascending order without lossof generality. For example, for M=8 and i=3 and the M-dimensional symbolvector given by:

$x = \begin{bmatrix}x_{1} \\x_{2} \\x_{3} \\x_{4} \\x_{5} \\x_{6} \\x_{7} \\x_{8}\end{bmatrix}$

When the two mutually exclusive index sets are chosen as I_(i)={1, 3, 5}and I_(M−i)={2, 4, 6, 7, 8}, the two reduced dimensional symbol vectorsare given by:

${x_{I_{i}} = \begin{bmatrix}x_{1} \\x_{3} \\x_{5}\end{bmatrix}},\mspace{14mu} {x_{I_{M - i}} = \begin{bmatrix}x_{2} \\x_{4} \\x_{6} \\x_{7} \\x_{8}\end{bmatrix}}$

With this partition, this invention establishes a procedure to constructan M-dimensional symbol vector x from a given i-dimensional symbolvector x_(I) _(i) by solving a linearly-constrained minimization problemwith i linear constraints and quantizing the solution to the nearestconstellation points to generate the (M−i)-dimensional symbol vectorx_(I) _(M−i) , and then concatenating x_(I) _(i) and x_(I) _(M−i)together to form x. The i-dimensional symbol vector x_(I) _(i) used asthe input in this generation procedure is termed the seed symbol vector,the induced (M−i)-dimensional symbol vector x_(I) _(M−i) is termed theseed complementary symbol vector and the output M-dimensional symbolvector x is term the augmented symbol vector. In particular, thelinearly-constrained minimization problem is defined as:

$\min\limits_{w}{w^{\dagger}A^{\dagger}{Aw}}$

subject to i linear constraints on w, given by:

C _(I) _(i) ^(†) w=x _(I) _(i) −x _(ls,I) _(i)

where

C _(I) _(i) =C(:, I _(i))

consists of the i columns of C indexed by I_(i) and

x _(ls,I) _(i) =x _(ls)(I _(i))

contains the i elements of x_(ls) indexed by I_(i). Note that the matrixC and vector x_(ls) are the constraint matrix and least-squares solutionas defined in the SUMMARY OF THE INVENTION Section of this manuscript ofthe invention.

A closed-form solution for the optimal w to this linearly-constrainedminimization problem is well-known and given by:

w _(I) _(i) =C _(I) _(i) f _(I) _(i) −C _(I) _(M−i) (C _(I) _(M−i) ^(†)A ^(†) AC _(I) _(M−i) )⁻¹ C _(I) _(M−i) ^(†) A ^(†) AC _(I) _(i) f _(I)_(i)

where

f _(I) _(i) =x _(I) _(i) −x _(ls,I) _(i)

and

C _(I) _(M−i) =C(: , I _(M−i))

contains the (M−i) columns of C indexed by I_(M−i). Define the vectoru_(I) _(M−i) as:

u _(I) _(M−i) =C _(I) _(M−i) ^(†) w _(I) _(i) +x _(ls,I) _(M−i) =−(C_(I) _(M−i) ^(†) A ^(†) AC _(I) _(M−i) )⁻¹ C _(I) _(M−i) ^(†) A ^(†) AC_(I) _(i) f _(I) _(i) +x _(ls,I) _(M−i)

where

x _(ls,I) _(M−i) =x _(ls)(I _(M−i))

contains the (M−i) elements of x_(ls) indexed by I_(M−i). The(M−i)-dimensional symbol vector x_(I) _(M−i) is generated by quantizingu_(I) _(M−i) element-wise to the nearest constellation points:

x _(I) _(M−i) =Q[u _(I) _(M−i) ]

where the quantizer Q[·] 2 denotes the quantization of each element ofthe enclosed vector to the nearest constellation point 20 with apre-defined constellation map 21 as illustrated in FIG. 2.

Note that when computing C_(I) _(M−i) ^(†) w _(I) _(i) in the abovederivation the unitary property of the C matrix is applied, i.e., C_(I)_(M−i) ^(†) C _(I) _(i) =0 and C_(I) _(M−i) ^(†)C_(I) _(M−i) =I. Asillustrated in FIG. 3, this procedure of generating the M-dimensionalaugmented symbol vector x from the i-dimensional seed symbol vectorx_(I) _(i) is referred to as the augmentation process in the descriptionof this invention and is represented by a block termed the augmentizer30 which consists of the minimization 301, quantization 302 andconcatenation 303 steps; The reverse process of generating x_(I) _(i)and x_(I) _(M−i) back from (I_(i), x) is referred to as thedeaugmentation process and is represented by a block termed thedeaugmentizer 31 as illustrated in FIG. 3. Note that the augmentedsymbol vector x is uniquely determined by (I_(i), x_(I) _(i) ), (A, C,x_(ls)) and the symbol constellation map Ω.

This invention delineates another procedure to map an M-dimensionalsymbol vector x to its neighboring symbol vector of the same dimension,denoted by x=P[x], that satisfies the following property: By using anycombination of (M−1) elements of x as an (M−1)-dimensional seed symbolvector, the remaining 1-element of x is the corresponding seedcomplementary symbol vector. The symbol vector x that satisfies thisproperty is termed a pivoting symbol vector. In other words, thepivoting symbol vector x is an augmented symbol vector generated byusing any combination of (M−1) elements of x as an (M−1)-dimensionalseed symbol vector. Note that this generation must hold true for all Mpossible combinations of selecting (M−1) elements out of x where theorder of the (M−1) selected elements is irrelevant.

A systematic procedure illustrated in FIG. 4 is applied to map anarbitrarily given M-dimensional symbol vector x to its neighboringpivoting symbol vector x. As shown in FIG. 4, this procedure is referredto as the pivoting procedure in the description of this invention andrepresented as a block termed the pivotizer 4. This pivoting procedurestarts with a symbol vector x and an iteration variable k set to 0 asthe initialization condition. In each iteration, the iteration variablek is modulo by M and increment by 1 40; the index set I_(M−1) isselected as taking the index k out from the M indices {1, 2, . . . , M}41 and is used to form x _(I) _(M−1) from x 42; the augmentizer 30constructs x based on the input (I_(M−1), x _(I) _(M−1) ); if this xequals x and the equality condition holds true for M consecutiveiterations where k has looped through 1 to M 43, the procedureterminates with x found to be the neighboring pivoting symbol vector tothe original x 45; otherwise, x is replaced by x 44 and anotheriteration starts with the iteration variable k modulo by M and incrementby 1 40. It should be apparent to those skilled in the art that theabove pivoting procedure is only illustration of specific embodiment ofthe pivotizer. Any modified pivoting procedures should fall in the scopeof this invention provided that the outcome of the procedure is a symbolvector that satisfies the pivoting property as define in this invention.For example, the arrangement of selecting the index k out from the Mindices {1, 2, . . . , M} from 1 to M in ascending order is shown inFIG. 4, whereas descending order or any other index selection order isalso applicable provided that the index k is looped through the overallM indices.

As illustrated in FIG. 5, a computational unit is constructed bycombining the augmentizer 30 and pivotizer 40 together and is referredto as the Augmentizer-Pivotizer Unit (APU) 5. This APU is used as thecore computational unit in the embodiment of this invention to computefor the optimal maximum likelihood transmit symbols given the receivingsamples at the receiver side.

As shown in FIG. 6, an embodiment of this invention employs M-branch ofdigital logic, which can be implemented as electronic circuit orcomputer program, to detect the maximum likelihood M-dimensional symbolvector, denoted by x_(ML). Each branch is used to generate a sequence ofsymbol vector estimates such that the estimates from one or more ofthese branches converge to x_(ML). To fire up the search procedure forthe M-branch in FIG. 6, an initial estimate of x_(ML) is required. Aconvenient way to generate this initial estimate x(0) is to compute theleast-squares estimate and apply direct quantization on each element ofthe least-squares estimate to its nearest constellation point 60, i.e.,

x(0)=Q[x _(ls)]

Given H and y, the computation of this initial estimate is relativelysimple and straightforward. Any other choices of initial estimate arealso applicable to this search procedure in the embodiment of thisinvention.

Specifically, the maximum likelihood symbol detector 6 starts withx(n)=x(0) 60 and uses the vector-to-scalar splitter 61 to separate the Melements of x(n) into M branches where each branch is fired up with thecorresponding element of x(n). For the m-th branch, the 1-dimensionalsymbol vector x_(m)(n) is used to fire up the maximum likelihoodestimate block 7 to generate the M-dimensional symbol vector x_(m)(n+1).The Best Estimate Selection block 62 is then applied to select the“best” estimate out of {x_(m)(n+1), m=1,2, . . . , M} from the Mbranches and the resulting best estimate is denoted by x(n+1). A symbolvector is deemed “better” than another symbol vector provided that theerror (or objective) function, ∥H(x−x_(ls))∥₂ ², associated with thissymbol vector is smaller. The best estimate for this iteration, x(n+1),is compared to that for the last iteration, x(n) 63; if it is better, abetter estimate has been found and x(n) is replaced by x(n+1) 64 tostart another iteration of search; otherwise, the search procedureterminates with the “best” estimate output selected as x(n) 65.

In an embodiment of this invention, the “maximum likelihood estimatefired up by 1-dimensional seed symbol vector” block 7 for the m-thbranch in FIG. 6 is implemented as illustrated in FIG. 7. For oneparticular iteration n in the m-th branch, the maximum likelihoodestimation block 7 in FIG. 7 starts with initializing i as 1 and the1-dimensional seed symbol vector as (I_(i), x_(I) _(i) )←(m, x_(m)(n))71; the augmentizer 30 generates the M-dimensional augmented symbolvector x; an M-dimensional to (i+1)-dimensional vector splitter 72 isthen applied to map x into (M−i) pairs of (i+1)-dimensional seed symbolvectors (I_(i+1) ^((l)), x_(I) _(i+1) ^((l))) defined as:

${I_{i + 1}^{(l)} = \left\{ {I_{i},{I_{M - i}(l)}} \right\}},\mspace{11mu} {{and}\mspace{20mu} {x_{I_{i + 1}}^{(l)}\begin{bmatrix}x_{I_{i}} \\{x_{I_{m - i}}(l)}\end{bmatrix}}}$

for l=1,2, . . . , M−i; each one of these (I_(i+1) ^((l)), x_(I) _(i+1)^((l))) is fed into an APU 73 to compute for a pivoting symbol vector x^((l)), respectively; for i=1, the i-th dimensional seed vector (I_(i),x_(I) _(i) ) is also fed into an APU 74 to compute for a pivoting symbolvector x; the Best Estimate Selection block 75 then selects the bestestimate from these pivoting symbol vectors and the output is denoted asx _(min); for i=1, the output for this branch is temporarily assignedas: x_(m)(n+1)←x _(min) 76; as i progresses from 1 to M−1, x _(min) iscompared with the x_(m)(n+1) computed for (i−1) and x_(m)(n+1) for i isupdated as x _(min) if x _(min) is better than x_(m)(n+1) 76; the“Select (i+1)-dimensional seed symbol vector” block 77 is used to selectone out of the (M−i) (i+1)-dimensional seed symbol vectors where aminimum error criterion is used to make the selection, i.e., thecorresponding linearly constrained minimization subproblem for (I_(i+1)^((l)), x_(I) _(i+1) ^((l))) that yields the minimum error is selectedas (I_(i+1), x_(I) _(i+1) ); this seed symbol vector (I_(i+1), x_(I)_(i+1) ) is then used as the input to the augmentizer 30 in FIG. 7 tostart the next loop of estimation procedure by increment i by 1 until ireaches M 78; when i reaches M the output for this branch in thisiteration is generated as x_(m)(n+1) 79.

Having described one embodiment of this invention, there are variousmodifications that can be made without departing from the scope of theinvention. Several modification schemes that are applicable for derivingadditional embodiments of this invention are provided below.

1) The APU 5 as shown in FIG. 5 is used to compute a pivoting symbolvector from an i-dimensional seed symbol vector with an augmentizer 30and a pivotizer 4. Extensions of this basic APU 5 can be derived by useof feedback as shown in FIG. 8 and seed duality as shown in FIG. 9,respectively. The APU with feedback 8 in FIG. 8 takes the pivotingsymbol vector output 80 and deaugmentizes 31 it to an i-dimensional seedsymbol vector to recompute a new pivoting symbol vector 30, 4. Thisfeedback can continue for a finite number of times or until the processconverges, i.e., when two consecutive output pivoting symbol vectors areequal. The best pivoting symbol vector generated through this feedbackprocess can be used as the final output of the APU. On the other hand,the APU with seed duality 9 in FIG. 9 generates one pivoting symbolvector x by use of the i-dimensional seed symbol vector as in the basicAPU 90, 91 and an additional pivoting symbol vector z by use of the(M−i)-dimensional seed complementary symbol vector 92, 93, 94. Moretypes of APU can also be derived by the mixture of using the mechanismof feedback and seed duality or any other applicable mechanism. Any typeof APU that can generate one or more pivoting symbol vectors from ani-dimensional seed symbol vector can be adopted to derive additionalembodiments of this invention.

2) For each iteration n in the embodiment of FIG. 6, the embodiment hasM branches corresponding to m=1,2, . . . , M. In addition, for theembodiment of each of these M branches in FIG. 7, there are M−1 loopbacklevels corresponding to i=1, 2, . . . , M−1. A sequence of pivotingsymbol vectors is generated during one iteration n for the two variableloops specified by m and i. When a better pivoting symbol vector isencountered in any particular (m, i) loop, the iteration n can beterminated prematurely, without having to reach all possible (m, i)loops, by using this pivoting symbol vector as the better estimate forthis iteration and proceed to the next iteration n+1. This iterationpremature termination strategy can be adopted to derive additionalembodiments of this invention.

3) For each iteration n in the embodiment of FIG. 6, the embodiment hasM branches corresponding to m=1,2, . . . , M. In addition, for theembodiment of each of these M branches in FIG. 7, there are M−1 loopbacklevels corresponding to i=1, 2, . . . , M−1. Over all the loopsspecified by the three variables (n, m, i), any two identicali-dimensional seed symbol vectors (I_(i), x_(I) _(i) ) to the input ofthe augmentizer 30 in FIG. 7 generate the same pivoting symbol vectorsat the output of the Best Estimate Selection 75 and hence all repetitionof i-dimensional seed symbol vectors over (n, m, loops at the input ofthe augmentizer 30 can be avoided to save computation resource withoutperformance degradation. A simple store-and-compare mechanism to keeptrack of all i-dimensional seed symbol vectors appearing at the input ofthe augmentizer 30 in FIG. 7 can be adopted to derive additionalembodiments of this invention.

4) In the embodiment of FIG. 7, the “Select (i+1)-dimensional seedsymbol vector” block 77 is used to select one out of (M−i) seed symbolvectors to pass onto the next loopback level of i+1. This block 77 canbe modified to allow the selection of more than one seed symbol vectorsto pass onto the next loopback level at the cost of more computationalcomplexity. By properly buffering the output of this block 77, theselection of more than one (i+1)-dimensional seed symbol vectors can beimplemented and adopted to derive additional embodiments of thisinvention. In addition, besides the described minimum error selectioncriterion, other selection criterion can also be adopted to deriveadditional embodiments of this invention.

5) In the embodiment of FIG. 7, there are (M−i) (i+1)-dimensional seedsymbol vectors (I_(i+1) ^((l)), x_(I) _(i+1) ^((l))) that are generatedat the output of the “M-dimensional to (i+1)-dimensional vectorsplitter” block 72 and are fed into (M−i) APUs 73 to generate (M−i)pivoting symbol vectors x ^((l)). By selecting only a subset of these(M−i) (i+1)-dimensional seed symbol vectors to be fed into the APUs, thecomputational complexity can be reduced. This computational complexityreduction strategy with a proper subset selection criterion can beadopted to derive additional embodiments of this invention.

The present invention has been described with specific embodimentsabove. However, it should be apparent to those skilled in the art thatthe above description is only illustration of specific embodiments andexamples of the present invention. The present invention should thereforcover various modifications and variations made to the herein-describedarchitecture and operations of the present invention, provided they fallwithin the scope of the present invention as defined in the followingappended claims.

1. A method for detecting transmit symbols at the receiver side in acommunications system, comprising: A sequence of linearly-constrainedminimization solvers with the transmit symbols appearing in theconstraint values.
 2. The method of claim 1, wherein the number of thefull set linear constraints equals the number of the transmit symbolsbeing detected, denoted by M.
 3. The method of claim 1, wherein theconstraint matrix C is an arbitrary unitary matrix and the constrainedvalues f are specified as the differences between the transmit symbolvector x and the least-squares solution x_(ls).
 4. The method of claim1, wherein the transmit symbol vector x is iteratively sought bysuccessively exchanging linear constraints through the selection of areduced set of i (<M) linear constraints from the full set of Mconstraints and the assignment of proper constraint values to theseselected constraints in each iteration.
 5. The method of claim 4,wherein the M-dimensional symbol vector x is partitioned into thei-dimensional seed symbol vector and the corresponding (M−i)-dimensionalseed complementary symbol vector, wherein the former is inherited fromthe estimate in the previous (i−1)-th iteration and the latter is to begenerated in the current i-th iteration. In each iteration, theconcatenation of the seed symbol vector and the corresponding seedcomplementary symbol vector forms a new estimate of the M-dimensionalaugmented symbol vector.
 6. The method of claim 4, wherein in eachiteration the search procedure is carried out to solve for a newestimate for the transmit symbol vector x by a core computational unit,Augmentizer-Pivotizer Unit (APU), further comprising: the firstaugmentizer unit wherein comprises the first sub-unit to find thesolution of the linearly-constrained minimization subproblem withreduced constraint sets given the i-dimensional seed symbol vector fromthe previous iteration, the second sub-unit to quantize the subproblemsolution to the nearest constellation point and the third sub-unit toconcatenate the i-dimensional seed symbol vector and the(M−i)-dimensional seed complementary symbol vector to form anM-dimensional augmented symbol vector, the second pivotizer unit to mapthe M-dimensional augmented symbol vector from the first augmentizeroutput to its neighboring pivoting symbol vector x of the samedimension, wherein x satisfies the pivoting property: By using anycombination of (M−1) elements of x as an (M−1)-dimensional seed symbolvector, the remaining 1-element of x is the corresponding seedcomplementary symbol vector.
 7. The APU of claim 6, wherein thepivotizer is implemented with a pivoting procedure starting with asymbol vector x and an iteration variable k set to 0 as theinitialization condition. In each iteration, the iteration variable k ismodulo by M and increment by 1; the index set I_(M−1) is selected astaking the index k out from the M indices {1, 2, . . . , M} and is usedto form x _(I) _(M−1) from x; an augmentizer constructs x based on theinput (I_(M−1), x _(I) _(M−1) ); if this x equals x and the equalitycondition holds true for M consecutive iterations where k has loopedthrough 1 to M, the procedure terminates with x found to be theneighboring pivoting symbol vector to the original x; otherwise, x isreplaced by x and another iteration starts with the iteration variable kmodulo by M and increment by
 1. It should be apparent to those skilledin the art that any modified pivoting procedures should fall in thescope of this invention provided that the outcome of the procedure is asymbol vector that satisfies the pivoting property.
 8. The APU of claim6, wherein the basic APU is extended with allowing the use of feedback,that is, taking the pivoting symbol vector output and deaugmentizing itto an i-dimensional seed symbol vector to re-compute a new pivotingsymbol vector, and wherein the feedback continues for a finite number oftimes or until the process converges, i.e., when two consecutive outputpivoting symbol vectors are equal. The best pivoting symbol vectorgenerated through this feedback process is used as the final output ofthe APU.
 9. The APU of claim 6, wherein the basic APU is extended withallowing the use of seed duality, that is, generating one pivotingsymbol vector by use of the i-dimensional seed symbol vector as in thebasic APU and an additional pivoting symbol vector by use of the(M−i)-dimensional seed complementary symbol vector.
 10. The APU of claim6, wherein the basic APU is extended with allowing the use of themixture of feedback and seed duality or any type of APU to generate oneor more pivoting symbol vectors from an 1-dimensional seed symbolvector.
 11. An apparatus for detecting transmit symbols at the receiverside in a communications system, comprising: A vector to scalarsplitter, M branches of maximum likelihood estimators, a best estimateselector, a better estimate comparator, a logic decision unit.
 12. Theapparatus of claim 11, wherein the vector to scalar splitter convertsthe current M-dimensional maximum likelihood symbol vector estimate intoM 1-dimensional seed symbols.
 13. The apparatus of claim 11, whereineach of the M branches of maximum likelihood estimators is tired up byone of the M 1-dimensional seed symbols from the output of the vector toscalar splitter, respectively.
 14. The apparatus of claim 11, whereinthe best estimate selector selects the best maximum likelihood estimatefrom the output of the M branches of maximum likelihood estimators. 15.The apparatus of claim 11, wherein the better estimate comparatorcompares the output of the best estimate selector with the last bestestimate and picks the better estimate.
 16. The apparatus of claim 11,wherein when a new better estimate is found from the better estimatecomparator the logic decision unit triggers the start of anotheriteration with this new better estimate being fed into the vector toscalar splitter, otherwise, the logic decision unit triggers the stop ofthe apparatus and outputs the best estimate as the maximum likelihoodestimate for the transmit symbol vector.
 17. The logic decision unit ofclaim 16, wherein the logic decision unit is extended with allowing thetrigger of the next iteration whenever a better pivoting symbol vectoris encountered, by using this pivoting symbol vector as the betterestimate for this iteration n and proceeding to the next iteration(n+1).
 18. The maximum likelihood estimator fired up by an 1-dimensionalseed symbol comprising: A counter to count a variable i from 1 to M−1,an augementizer to take an i-dimensional seed vector as input and tooutput an M-dimensional augmented symbol vector, an M-dimensional to(i+1)-dimensional vector splitter to take an M-dimensional symbol vectoras input and to output (M−i) (i+1)-dimensional seed symbol vectors, an(i+1)-dimensional seed symbol selector to select one out of the (M−i)(i+1)-dimensional seed symbol vectors, (M−i) APUs and one extra APU wheni=1, a best estimate selector to select one out of (M−i) M-dimensionalsymbol vectors when i>1 and i<M, or to select one out of M M-dimensionalsymbol vectors for i=1, a comparator to compare the output of the bestestimate selector with the last best estimate and to pick the betterestimate.
 19. The maximum likelihood estimator of claim 18, wherein thestaid, procedure is extended with allowing the use of store-and-comparemechanism to keep track of all i-dimensional seed symbol vectorsappearing at the input of the augmentizer and remove any repetitivelyoccurring seed symbol vectors to avoid repetition.
 20. The maximumlikelihood estimator of claim 18, wherein the search procedure isextended with allowing the use of buffering scheme to select more thanone (i+1)-dimensional seed symbol vectors to pass onto the next loopbacklevel of (i+1).
 21. The maximum likelihood estimator of claim 18,wherein the search procedure is extended with allowing the use of subsetselection criterion, that is, by selecting only a subset of the (M−i)(i+1)-dimensional seed symbol vectors to be fed into the APUs.
 22. Theapparatus of claim 11, wherein is implemented in electronic circuits orcomputer program.